Method and system for providing business intelligence based on user behavior

ABSTRACT

Disclosed is a computer implemented method of providing business intelligence based on user behavior. The method may include a step of receiving a user identifier associated with the user from a requesting entity, such as a server computer. Further, the method may include a step of identifying an anonymous identifier corresponding to the user identifier. Additionally, the method may include a step of retrieving anonymous user behavior data based on the anonymous identifier. Furthermore, the method may include a step of transmitting the anonymous user behavior data to the requesting entity. Accordingly, the anonymous user behavior data may be used by the requesting entity to, for example, to enrich data, such as CRM data, of the user with the anonymous user behavior data.

RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No. 15/177,178, filed Jun. 8, 2016, which claims the benefit of U.S. Provisional Application Ser. No. 62/173,071, filed Jun. 9, 2015, the contents of which are herein incorporated by reference in their entirety.

FIELD OF DISCLOSURE

The present disclosure generally relates to providing business intelligence based on user behavior. More specifically, the present disclosure relates to a method and system for enriching data of users, such as Customer Relationship Management (CRM) data, with anonymous user behavior data.

BACKGROUND

Individuals and companies often use data derived from the Internet to optimize business strategies. For example, data derived from the Internet may be used to study demographics, psychographics, market behavior, competitor affinity, targeted marketing, and expanding markets. For example, companies often use market data to best market their products and services. Moreover, companies often use targeted marketing to specific individuals to try to improve marketing effectiveness.

When consumers visit a website, the pages they visit, the amount of time they view each page, the links they click on, the searches they make and the things that they interact with, allow sites to collect that data, and other factors, to create a ‘profile’ that links to that visitor's web browser. As a result, companies can use this data to create defined audience segments based upon visitors that have similar profiles. When visitors return to a specific site or a network of sites using the same web browser, those profiles can be used to allow advertisers to position their online ads in front of those visitors who exhibit a greater level of interest and intent for the products and services being offered. On the theory that properly targeted ads will fetch more consumer interest, the publisher (or seller) can charge a premium for these ads over random advertising or ads based on the context of a site.

Behavioral marketing can be used on its own or in conjunction with other forms of targeting based on factors like geography, demographics or contextual webpage content. While there is an abundance of data from global Internet use, much of the data is unavailable due to privacy laws. The information that is available is often too general to be useful and does not provide adequate resolution.

BRIEF OVERVIEW

A business intelligence provisioning platform may be provided. This brief overview is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This brief overview is not intended to identify key features or essential features of the claimed subject matter. Nor is this brief overview intended to be used to limit the claimed subject matter's scope.

According to some embodiments, one objective of the business intelligence platform (also referenced as “the platform”) to provide anonymous user behavior data to requesting entities, such as a server computer.

Accordingly, the platform may be configured to collect anonymous user behavior data of users from a variety of sources. For example, as users access webpages on different websites, the webservers hosting the websites may collect user behavior data, for instance, using cookies. Further, the platform may be configured to communicate with each webserver to obtain the user behavior data. However, in some instances, each webserver may be configured to render the user behavior data anonymous in order to protect the privacy of the users. Accordingly, the platform may receive the anonymous user behavior data from each webserver. Further, using a technique, such as, for example, cookie syncing, the platform may be configured to aggregate anonymous user behavior data corresponding to a particular user across different sources.

For instance, each webserver may be configured to generate an anonymous identifier corresponding to a user by performing a one-way mapping, such as, for example, one-way hashing of a user identifier, such as an email address. Accordingly, by employing a common one-way mapping, anonymous user behavior data generated at different websites may be correlated and aggregated as anonymous user behavior data related to a particular user.

Further, in order to provision the anonymous user behavior data, the platform may be configured to receive a request for anonymous user behavior data corresponding to a user. Further, the request may include a user identifier. Additionally, in some instances, the request may include a plurality of user identifiers corresponding to a plurality of users. Upon receiving the request, the platform may identify a corresponding anonymous identifier using the one-way mapping. Accordingly, based on the anonymous identifier, corresponding anonymous user behavior data may be identified and retrieved from a database included in the platform. Subsequently, the platform may transmit the anonymous user behavior data to the requesting entity.

In some instances, the requesting entity may include a Customer Relationship Management (CRM) database. Further, the CRM database may include specific data associated with the user, such as, for example, first name, last name, phone number, postal address, products purchased, services subscribed to and so on. In some instances, the data included in the CRM data may be obtained from offline sources, such as, for example, a brick and mortar store where a product was purchased.

Accordingly, upon receiving the anonymous user behavior data of the user, the requesting entity may enrich the CRM database with the anonymous user behavior data. For instance, the anonymous user behavior data may include keywords indicating interests of the user, such as, for example, brands, products, and services. Additionally, the anonymous user behavior data may include affinity values corresponding to the keywords. An affinity value of a keyword may indicate a relative measure of the user's interest with regard to the keyword. Accordingly, the CRM database may be populated with rich data of users providing greater business intelligence and insights for the users of the CRM database.

Further, in some embodiments, the platform may be configured to match specific data of a user. For example, data available in the CRM database with the anonymous user behavior data. In other words, the platform may be configured to correlate data from the CRM database with the anonymous user behavior data in order to identify an association between data of a user in the CRM database and anonymous user behavior data corresponding to the user. Accordingly, in an instance, the platform may receive at least a portion of data from the CRM database. For example, the CRM database may include demographic data of the user, such as age, location, educational qualifications, employment details, and so on. Further, the anonymous user behavior data may also include corresponding demographic data for each user. Accordingly, by correlating demographic data in the CRM database with the demographic data included in the anonymous user behavior data, the platform may be able to build an association between data in CRM database and the anonymous user behavior data. Accordingly, anonymous user behavior data corresponding to a particular user and/or a group of users may be identified and provisioned.

Further, in some embodiments, by comparatively analyzing specific data of users with the anonymous user behavior data, customer churn may be predicted. For example, based on specific data available in the CRM database, a product and/or a service used by the user may be identified. Further, based on the anonymous user behavior data, an interested product and/or an interested service may be identified. Subsequently, by comparing data of the product and/or the service with that of the interested product and/or the interested service, the customer churn may be predicted.

Alternatively and/or additionally, in some embodiments, the platform may also be configured to predict churn. Accordingly, in some instances, the platform may receive a request for churn prediction. Further, the platform may be configured to analyze the anonymous user behavior data to identify an interested product and/or an interested service. Furthermore, the anonymous user behavior data may include contextual data, such as, for example, data indicative of the user device used to access webpages. Accordingly, by comparing the contextual data with the data indicative of the interested product and/or the interested service, the platform may be able to predict churn. For instance, the anonymous user behavior data may indicate that an Android Smartphone was used to access webpages about iPhone on several websites. This may indicate a strong interest of the user towards iPhone. Accordingly, the platform may predict, with a measure of likelihood, churn of the user from the android device to iPhone. Such churn prediction may enable an operator the requesting entity, such as mobile device manufacturer, to identify a business opportunity and take actions, such as, for example, providing targeted advertisements of iPhone to the user that have a higher rate of conversion into sale.

Both the foregoing Brief Overview and the following Detailed Description provide examples and are explanatory only. Accordingly, the foregoing brief overview and the following detailed description should not be considered to be restrictive. Further, features or variations may be provided in addition to those set forth herein. For example, embodiments may be directed to various feature combinations and sub-combinations described in the Detailed Description.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate various embodiments of the present disclosure. The drawings contain representations of various trademarks and copyrights owned by the Applicants. In addition, the drawings may contain other marks owned by third parties and are being used for illustrative purposes only. All rights to various trademarks and copyrights represented herein, except those belonging to their respective owners, are vested in and the property of the Applicants. The Applicants retain and reserve all rights in their trademarks and copyrights included herein, and grant permission to reproduce the material only in connection with reproduction of the granted patent and for no other purpose.

Furthermore, the drawings may contain text or captions that may explain certain embodiments of the present disclosure. This text is included for illustrative, non-limiting, explanatory purposes of certain embodiments detailed in the present disclosure. In the drawings:

FIG. 1 illustrates a block diagram of an operating environment consistent with the present disclosure;

FIG. 2 is a flow chart of a method for creating a user profile based on user behavior according to some embodiments;

FIG. 3 a flow chart of a method of providing anonymous user behavior data according to some embodiments;

FIG. 4 a flow chart of a method of predicting churn based on anonymous user behavior data according to some embodiments;

FIG. 5 a flow chart of a method of correlating anonymous user behavior data with data associated with known users according to some embodiments;

FIG. 6 a flow chart of a method of providing anonymous user behavior data according to some embodiments;

FIG. 7 illustrates exemplary business intelligence related to a user provided based on anonymous user behavior data according to some embodiments;

FIG. 8 illustrates an online user behavior of a user based on which a user profile may be created in accordance with some embodiments;

FIG. 9 illustrates an exemplary comprehensive user browsing data based on which a user profile may be created in accordance with some embodiments;

FIG. 10 illustrates Natural Language Processing performed on data extracted from webpages visited by a user based on which a user profile may be created in accordance with some embodiments; and

FIG. 11 is a block diagram of a system including a computing device for performing the methods of FIG. 2 to FIG. 6.

DETAILED DESCRIPTION

As a preliminary matter, it will readily be understood by one having ordinary skill in the relevant art that the present disclosure has broad utility and application. As should be understood, any embodiment may incorporate only one or a plurality of the above-disclosed aspects of the disclosure and may further incorporate only one or a plurality of the above-disclosed features. Furthermore, any embodiment discussed and identified as being “preferred” is considered to be part of a best mode contemplated for carrying out the embodiments of the present disclosure. Other embodiments also may be discussed for additional illustrative purposes in providing a full and enabling disclosure. As should be understood, any embodiment may incorporate only one or a plurality of the above-disclosed aspects of the display and may further incorporate only one or a plurality of the above-disclosed features. Moreover, many embodiments, such as adaptations, variations, modifications, and equivalent arrangements, will be implicitly disclosed by the embodiments described herein and fall within the scope of the present disclosure.

Accordingly, while embodiments are described herein in detail in relation to one or more embodiments, it is to be understood that this disclosure is illustrative and exemplary of the present disclosure, and are made merely for the purposes of providing a full and enabling disclosure. The detailed disclosure herein of one or more embodiments is not intended, nor is to be construed, to limit the scope of patent protection afforded in any claim of a patent issuing here from, which scope is to be defined by the claims and the equivalents thereof. It is not intended that the scope of patent protection be defined by reading into any claim a limitation found herein that does not explicitly appear in the claim itself.

Thus, for example, any sequence(s) and/or temporal order of steps of various processes or methods that are described herein are illustrative and not restrictive. Accordingly, it should be understood that, although steps of various processes or methods may be shown and described as being in a sequence or temporal order, the steps of any such processes or methods are not limited to being carried out in any particular sequence or order, absent an indication otherwise. Indeed, the steps in such processes or methods generally may be carried out in various different sequences and orders while still falling within the scope of the present invention. Accordingly, it is intended that the scope of patent protection is to be defined by the issued claim(s) rather than the description set forth herein.

Additionally, it is important to note that each term used herein refers to that which an ordinary artisan would understand such term to mean based on the contextual use of such term herein. To the extent that the meaning of a term used herein-as understood by the ordinary artisan based on the contextual use of such term-differs in any way from any particular dictionary definition of such term, it is intended that the meaning of the term as understood by the ordinary artisan should prevail.

Regarding applicability of 35 U. S.C. § 112, if 6, no claim element is intended to be read in accordance with this statutory provision unless the explicit phrase “means for” or “step for” is actually used in such claim element, whereupon this statutory provision is intended to apply in the interpretation of such claim element.

Furthermore, it is important to note that, as used herein, “a” and “an” each generally denotes “at least one”, but does not exclude a plurality unless the contextual use dictates otherwise. When used herein to join a list of items, “or” denotes “at least one of the items”, but does not exclude a plurality of items of the list. Finally, when used herein to join a list of items, “and” denotes “all of the items of the list”.

The following detailed description refers to the accompanying drawings. Wherever possible, the same reference numbers are used in the drawings and the following description to refer to the same or similar elements. While many embodiments of the disclosure may be described, modifications, adaptations, and other implementations are possible. For example, substitutions, additions, or modifications may be made to the elements illustrated in the drawings, and the methods described herein may be modified by substituting, reordering, or adding stages to the disclosed methods. Accordingly, the following detailed description does not limit the disclosure. Instead, the proper scope of the disclosure is defined by the appended claims. The present disclosure contains headers. It should be understood that these headers are used as references and are not to be construed as limiting upon the subjected matter disclosed under the header.

The present disclosure includes many aspects and features. Moreover, while many aspects and features relate to, and are described in, the context of data mining for marketing purposes, embodiments of the present disclosure are not limited to use only in this context. For example, the platform may be used to study demographics, psychographics, market behavior, competitor affinity, and expanding markets.

I. Platform Overview

Consistent with embodiments of the present disclosure, a business intelligence provisioning platform may be provided. This overview is provided to introduce a selection of concepts in a simplified form that are further described below. This overview is not intended to identify key features or essential features of the claimed subject matter. Nor is this overview intended to be used to limit the claimed subject matter's scope.

A platform consistent with embodiments of the present disclosure may be used by individuals or companies to determine, with relative accuracy, statistics about individuals using the Internet and groups of such individuals. Such statistics may be used by the platform to predict, for example, but not limited to, an individual or group of individuals' personal and commercial behavior. As a non-limiting, illustrative example, the platform may be used by a washing machine company to, for example, determine which individuals are likely to be purchasing a new washing machine, and which brands they are most likely to purchase based on webpages that they visit.

Embodiments of the present disclosure may operate in a plurality of different environments. For example, in a first aspect, the platform may receive notice that an individual has visited a webpage. Then, the platform may crawl that page to gather raw data from the page. For example, the platform may use various algorithms, including, but not limited to, for example, natural language processing (NLP) and digital signal processing (audio/image/video data) to search the webpage for key words or phrases.

Still consistent with embodiments of the present disclosure, the platform may receive raw data as it tracks individuals throughout, for example, an ad network or collection of ad networks. Tracking may include, for example, but not be limited to, a crawling of each visited webpage so as to create a profile for the page. As will be further detailed below, the profile may be generated by, for example, the aforementioned algorithms used to gather raw data for the page.

Accordingly, in some embodiments, interaction of a user with a plurality of servers, such as, for example, content servers, ad servers, and so on may be monitored. For instance, when the user visits a webpage provided by a server, a tracking cookie may be instantiated in order to save information regarding the user and/or the user's interaction with the webpage. For instance, the tracking cookie may be instantiated at the server side and may include information, such as a timestamp corresponding to the user's visiting of the webpage and one or more identifiers associated with the user. The one or more identifiers may be for example, a network identifier, such as an Internet Protocol (IP) number and/or a MAC number, a device identifier, such as an IMEI number, a software environment identifier, such as OS name, browser name, etc., user identifiers, such as email address, first name, last name, middle name, postal address, etc., and values of contextual variables, such as GPS location of the device used to access the webpage, sensor readings of the device while accessing the webpage and so on.

In some embodiments, the one or more identifiers, such as the IMEI number, may uniquely identify the user while preserving anonymity of the user.

In other embodiments, the one or more identifiers may be subjected to encryption or a one-way hashing in order to render the one or more identifiers unreadable to other users while maintaining the ability of the one or more identifiers to uniquely identify the user. For example, in some instances, tracking cookie may be instantiated on a client side, where the tracking cookie may reside on a user device, such as a smartphone or a laptop computer. Accordingly, any information collected by the tracking cookie may remain accessible in human readable form only within the user device. However, prior to transmitting the tracking cookie to the server side, the information collected may be subjected to hashing. Accordingly, in some embodiments, information about the user in human readable form may not be available at the server side. Thus, users may be ensured of preserving their privacy.

Further, in some embodiments, each of the plurality of servers may adopt a common hashing algorithm such that each of the plurality of servers may compute a common hash value for the one or more identifiers. Accordingly, when information in the tracking cookies from each of the plurality of servers is transmitted to the platform, the information collected by multiple tracking cookies may be identified as being associated with the same user based on the common hash value. Such a technique may allow tracking the user across multiple servers accessed by the user through a common user device.

In yet further embodiments of the present disclosure, the raw data may be from purchased data acquired by data aggregators. The raw data may include, for example, a plurality of device specific information (e.g., device serial number, IP address, and the like) along with a listing of websites accessed by the device. The platform may be enabled to identify a plurality of devices associated with a single individual and, subsequently, associated the data aggregated and processed for each device to a single individual profile.

For instance, in some embodiments, where the user may access the same and/or different servers through multiple user devices, a correlation of the information collected by the multiple cookies may be performed in order to track the user. For instance, each of the multiple tracking cookies may not include all of the one or more identifiers. For example, the user may access a webpage of a server using a smartphone, while the user may access a webpage of another server using a laptop computer at work. Further, the laptop computer may include additional restrictions that forbid the tracking cookie from collecting some of the one or more identifiers. However, at least some of the information collected by the multiple cookies may still be common. Accordingly, by correlating information across the multiple tracking cookies, it may be ascertained that the multiple tracking cookies are associated with the same user. Further, in some embodiments, a threshold of correlation value may be established. Accordingly, the multiple tracking cookies may be determined to be associated with the user only if a correlation value exceeds the threshold.

The platform may then apply the aforementioned algorithms to process the websites accessed by the devices and, in this way, profile the websites as will be detailed below. The profiled website may then be used to characterize an individual who has been detected to access the profiled website. Moreover, and as will be further detailed below, the characterized individual data may then be grouped along with other individuals' data assessed by the platform in a plurality of ways including, but not limited to, geographic, household, workplace, interests, affinities, gender, age, and the like.

It should be understood that each individual analyzed by the platform of the present disclosure may be weighted with an ‘affinity’ of relationship to a particular category. For example, for those individuals who have visited websites profiled to be more ‘female’ friendly may be determined, by the platform, to be most likely a ‘female’ based on, either solely or at least in part, the individual's web-traffic of profiled web-pages associated with the individual's tracked device.

As yet a further example, the platform may identify individuals that visit webpages that include the words “cell phone” and determine that the individuals may be more likely to be shopping for cell phones. Further, by counting the number of times the individuals visit webpages that have predominately iPhones versus web-pages that have predominately Android Smartphones, the likelihood that such individuals prefer one phone to the other may be assessed. The platform may group like users to create useful statistical data. For example, the platform may create groups of people that are most likely willing to purchase a specific product (e.g., cell phones, or, more specifically, Android Smartphones).

Embodiments of the platform may further be used to enable a platform user (e.g., mobile telecommunications company) to better understand its target market. Accordingly, data that has been acquired, aggregated, and processed by the platform may be provided to the user. For example, an application program interface (API) may provide statistics about single individual (e.g., likelihood that an individual prefers Android Smartphones to iPhones), or groups of individuals (e.g., which individuals prefer Android Smartphones to iPhones). Such statistics may be provided in, for example, lists, charts, and graphs. Further, searchable and sortable raw data may be provided. In some embodiments, the data may be provided to licensed users. For example, users that have identified data, such as, for example, AT&T, which has a list of known individuals, may use the data to, for example, further market to their known list of individuals or predict churn.

In some embodiments, the processed data may be provided to the user as a plug-in. For example, if an individual logs into a website for the first time (e.g., Home Depot), the website owner may be able to customize the display for the first-time individual. In other embodiments, the platform may integrate with a customer relationship module (CRM). In this way, the CRM may be automatically updated with processed data for individuals in the CRM.

Both the foregoing overview and the following detailed description provide examples and are explanatory only. Accordingly, the foregoing overview and the following detailed description should not be considered to be restrictive. Further, features or variations may be provided in addition to those set forth herein. For example, embodiments may be directed to various feature combinations and sub-combinations described in the detailed description.

II. Platform Configuration

FIG. 1 illustrates one possible operating environment through which a platform consistent with embodiments of the present disclosure may be provided. By way of non-limiting example, a platform 100 may be hosted on a centralized server 110, such as, for example, a cloud computing service. A user 105 may access platform 100 through a software application. The software application may be embodied as, for example, but not be limited to, a website, a web application, a desktop application, and a mobile application compatible with a computing device 1100. One possible embodiment of the software application may be provided by Clickagy LLC.

As will be detailed with reference to FIG. 11 below, the computing device through which the platform may be accessed may comprise, but not be limited to, for example, a desktop computer, laptop, a tablet, or mobile telecommunications device. Though the present disclosure is written with reference to a mobile telecommunications device, it should be understood that any computing device may be employed to provide the various embodiments disclosed herein.

A user 105 may provide input parameters to the platform. For example, input parameters may be certain device IDs. As another example, input parameters may include individuals living in Atlanta, Ga., USA Input parameters may be passed to server 110. Server 110 may further be connected to various databases, such as, for example, purchased data 120, tracking data 125 and CRM data 130. In some embodiments, the CRM may be associated with the user. For example, user's CRM database may interface with the platform.

Information relevant to individuals associated with the input parameters, such as, for example, which websites they visited, may be sent to webcrawler 115. Webcrawler 115 may search webpages and online documents visited by individuals being tracked and gather data associated with the searched webpages and online documents. For example, webcrawler 115 may utilize natural language processing and audio, video and image processing to gather information for websites. Webcrawler 115 may further perform algorithms and build profiles based on webpages and online documents being searched, such as, for example, constructing ‘affinities’ for websites (further discussed below). Information and website and online document profiles being tracked may be passed back to server 110. Server 110 may further construct profiles for individuals being tracked and groups of individuals being tracked. The individual and group profiles, as well as further data (e.g. personally identifiable information (PPI), non-PPI, de-identified data and website/individual/group affinity) may be returned to user 105.

User 105 may then use the returned data. For example, user 105 may merge the individual and group profiles with their own data. In some embodiments, user 105 may license the data to other individuals or companies. In further embodiments, user 105 may receive data in a visual form, such as, for example, on a dashboard containing tables, graphs, and charts summarizing the data. In some embodiments, received data may be integrated with a user CRM database. Further, in some embodiments, the received data may be utilized by an APL. For example, a plug-in may utilize the received data for identifying individuals (and their associated information, affinities and preferences) that visit a user's website for the first time.

III. Platform Operation

FIG. 2 to FIG. 6 are flow charts setting forth the general stages involved in methods 200 to 600 consistent with some embodiments of the disclosure. Methods 200 to 600 may be implemented using a computing device 1100 as described in more detail below with respect to FIG. 11.

Although methods 200 to 600 have been described to be performed by platform 100, it should be understood that computing device 1100 may be used to perform the various stages of methods 200 to 600. Furthermore, in some embodiments, different operations may be performed by different networked elements in operative communication with computing device 1100. For example, server 110 may be employed in the performance of some or all of the stages in methods 200 to 600. Moreover, server 110 may be configured much like computing device 1100. Furthermore, in some embodiments, some of the methods 200 to 600 may be performed by a requesting entity in communication with the platform 100, such as a CRM database including CRM data 130.

Although the stages illustrated by the flow charts are disclosed in a particular order, it should be understood that the order is disclosed for illustrative purposes only. Stages may be combined, separated, reordered, and various intermediary stages may exist. Accordingly, it should be understood that the various stages illustrated within the flow chart may be, in various embodiments, performed in arrangements that differ from the ones illustrated. Moreover, various stages may be added or removed from the flow charts without altering or deterring from the fundamental scope of the depicted methods and systems disclosed herein. Ways to implement the stages of methods 200 to 600 will be described in greater detail below.

Method 200 may begin at starting block 205 and proceed to stage 210 where platform 100 may receive data from an individual's internet use. For example, the platform may receive information about a webpage that the individual visited or a Microsoft Word document or PDF that an individual downloaded. Information may include the URL of the webpage. Further information may be received, including IP address of the individual, search history of the individual, and geolocation of the individual.

From stage 210, where platform 100 receives data from an individual's Internet use, method 200 may advance to stage 220 where platform 100 may further gather information associated with the individual's Internet use. For example, the platform may crawl the webpage that the individual visited. For example, the platform may search for specific key words or phrases. In some embodiments, if the webpage has already been crawled, the webpage may be skipped.

During the crawl, the platform may perform, for example, natural language processing (NLP) to further process the context of the words and phrases in the text. In addition, the platform may utilize image recognition, audio recognition, and/or video recognition to gather data about the individual's Internet use. For example, images may be scanned with optical character recognition (OCR). The OCR scanning may generate words or phrases for characterizing the webpage. Further, image recognition software may be used to characterize the webpage. For example, artificial intelligence (AI) software may be used to determine whether an image is showing, for example, a dog or a tree. Audio files from the webpage may be scanned, using, for example, voice recognition software, to further provide information to characterize the webpage. Video files from a page may be converted to a series of images from periodic individual frames and scanned in the same manner as an image. In addition, the audio associated with the video may be scanned to provide data about the webpage. Likewise, text from the webpage may also be extracted and analyzed based on NLP. The combination of text, image, audio, and video recognition may provide a human-style “view” of what the webpage provides. The human-style “view” may enable the platform to optimize characterization of the webpage.

Information that is acquired from the crawl may further be associated with how recently such information was associated with the webpage (e.g., newer information may be given a higher relevance than older information). The platform may receive further information, for example, that is purchased from various data aggregators (e.g., aggregators that track specific IDs.) In addition, information may be tracked from an existing individual base. For example, if the individual clicks (“I Agree”) on certain terms and conditions, the platform may place a tracking cookie on the individual's device to further gather information. In some embodiments, stages 210 and 220 may comprise 207, where platform 100 receives general data. The general data may include, for example, data from webpages (e.g., text, image, audio, and video data associated with the webpage) and data from individuals (e.g., which websites the individuals have visited, information from the individuals' social media profiles, and the like).

Once platform 100 further gathers information associated with the individual's Internet use in stage 220, method 200 may continue to stage 230 where platform 100 may analyze the information. In some embodiments, the platform may perform natural language processing (NLP), as well as image, audio, and video recognition to analyze the information. For example, the platform may use specific keywords and phrases, as well as keywords associated with image, video, and audio files, found on each webpage and attach a plurality of ‘affinities’ to each page. For example, for a news article about iPhones, the platform may return hundreds of ‘keywords’, including “Apple” with 94% affinity, “cell phone” with 81% affinity, and “screen” with 52% affinity. The platform may then interpret the information based on the individual's Internet use to create a profile associated with the affinities.

For example, an individual may visit a number of web-pages that have high affinity for keywords like “truck”, “football”, and “Scotch”. Such an individual may be statistically more likely to be a male. As another example, another individual may visit a number of web-pages that have high affinity for keywords like “nail polish”, “Midol”, and “Pinterest”. Such an individual may be statistically more likely to be female. Such statistical predictions may be associated with a confidence level. Further, statistical predictions may be made for an abundance of other characteristics, such as, for example, but not limited to, age, marital status, parental status, approximate household income, industry of employment, sport preference, automobile preference, and phone preference.

After platform 100 analyzes the information for each individual in stage 230, method 200 may proceed to stage 240 where platform 100 may group users based on certain characteristics. For example, individuals likely to be of a certain characteristic, such as, for example, gender, age, marital status, parental status, approximate household income, and industry of employment, may be grouped together. Additionally, individuals may be grouped together based on their preferences, such as, for example, sport preference, automobile preference, and phone preference.

Further, in some embodiments, individuals may be grouped. For example, using logic functions (e.g., AND, OR, and NOT), individuals of a specific type may be grouped and sorted. Accordingly, a group profile corresponding to a plurality of users may be created. Further, the group profile may include a plurality of keywords and a corresponding plurality of group affinity values. A group affinity value of a keyword may be based on aggregation of affinity values of the keyword associated with the plurality of users. For instance, as shown, the plurality of users may correspond to a group of website visitors, list of email recipients, marketing audience, paying customers, and so on.

Further, each user may be associated with a user profile comprising keywords, corresponding affinity values, and one or more other characteristics, such as demographic characteristics. Additionally, in some embodiments, one or more of keywords, corresponding affinity values and demographic characteristics may be determined based on analysis of the webpages visited by the users.

According to some embodiments, a method 300 of providing business intelligence based on user behavior may be provided as illustrated in FIG. 3. The method 300 may be a computer implemented method. Accordingly, one or more steps of the method 300 may be performed automatically by a computer.

The user behavior may include, for example, online activity performed by the user, such as viewing webpages, online shopping, downloading content from the internet, uploading content to the internet, and interacting with a desktop application and/or a mobile application. An exemplary online user behavior data based on which a user profile may be created is illustrated in FIG. 8.

The method may include a step 310 of receiving a user identifier associated with a user from a requesting entity. In general, the user identifier may be data of any form that may uniquely identify a user. For example, the user identifier may be a text string, such as, a name, a phone number, an email address, an IMEI number, IP number, a device serial number, and so on. Alternatively, the user identifier may also include a biometric feature of the user, such as a voice sample, fingerprint, and so on.

In some instances, the user identifier may be such that the user's personal details may not be identifiable by general public based only on the user identifier. For instance, an IMEI number of a smartphone purchased by a user may be associated with personal details about the user. However, such information is kept private by the manufacturer/distributor of the smartphone. Accordingly, mere possession of the IMEI number by another party may not compromise the privacy of the user. As another example, a personal email address of the user may also be such that the user's personal details may not be identifiable from the personal email address. For example, the personal email address may not be correlatable with personal information of the user available from other data sources, in case the personal information does not include the personal email address.

However, in some other instances, the user identifier may be such that the user's personal details may be identifiable from the user identifier itself and/or by querying other data sources. For instance, the user identifier may include the first name and last name of the user. As another example, the user identifier may include the official email address of the user. Further, personal details of the user may be publicly available along with the official email address on a company profile page of the user. Accordingly, in some instances, possession of the user identifier may enable one to determine the personal details of the user by querying the company profile page.

Further, in some embodiments, the requesting entity may be a server computer. Additionally, in some embodiments, the data associated with the user may be included in a Customer Relationship Management (CRM) database executable on the server computer. For instance, the server computer may be operated by companies who may want access to the anonymous user behavior data in order to understand interests of users so that, for example, more relevant and targeted marketing may be performed.

Further, the method 300 may include a step 320 of identifying an anonymous identifier corresponding to the user identifier. The anonymous identifier may, in general, be such that personal details of the user may not be obtained from only the anonymous identifier. In other words, the anonymous identifier may, in some instances, enable the platform or any other computer system to uniquely identify the user among other users. However, no personal details of the user may be derivable based only on the anonymous identifier.

Further, in some embodiments, the anonymous identifier may be identified based on operating a one-way hash function on the user identifier. Accordingly, the user identifier may not be recoverable from the anonymous identifier due to the nature of the one-way hash function. Consequently, possession of the anonymous identifier in itself may not compromise privacy of the user.

Further, the method 300 may include a step 330 of retrieving anonymous user behavior data based on the anonymous identifier. For instance, the platform may include a database including anonymous user behavior data corresponding to a plurality of users. Accordingly, the database may be queried with the anonymous identifier as a key in order to retrieve the anonymous user behavior data of the user.

Further, in some embodiments, retrieving the anonymous user behavior data may include retrieving data from a plurality of cookies corresponding to a plurality of websites. For example, the method may include communicating with a plurality of webservers in order to receive data from cookies corresponding to the user from each of the plurality of webservers. Further, the database included in the platform may be populated with the data from the cookies.

Furthermore, in some embodiments, each cookie may include at least a portion of the anonymous user behavior data. Furthermore, in some embodiments, each cookie may be associated with the anonymous identifier. As a result, data from the plurality of cookies may be identified as corresponding to the same user.

Further, in some embodiments, the anonymous user behavior data may be based on online activity of user. In general, online activity may be any activity performed by the user on a network, such as, for example, the Internet. For instance, the online activity may include visiting a webpage, downloading and/or uploading content from the internet, and so on. Alternatively and/or additionally, in some embodiments, the anonymous user behavior data may be based on offline activity of the user, such as, for example, interactions of the user with applications executing on a user device. Accordingly, data associated with the interactions may be captured and included in the anonymous user behavior data.

Further, in some embodiments, the anonymous user behavior data may include contextual data corresponding to the online activity. In general, the contextual data may represent a state of one or more of the user, a user device, an environment of the user and/or the user device, data generated and/or captured by other devices in the vicinity of the user and/or the user device. and so on.

Further, in some embodiments, the contextual data may correspond to one or more user devices used by the user to perform the online activity. For instance, the user may use a variety of user devices, such as, for example, laptop computer, desktop computer, tablet computer, smartphone, and so on to visit webpages over a period of time and at different places, such as home, office, restaurants, on-road, and so on. Accordingly, contextual data corresponding to one or more of the user devices may be captured and associated with the anonymous user behavior data of the user.

Further, in some embodiments, the contextual data may include device data representing the at least one user device. In general, the device data may include any data captured by the user device or any other device in communication with the user device. For example, the device data may include information regarding the hardware and/or the software configuration of the user device. Further, the device data may also include a state of operation of the user device. The state of operation may include, for example, applications currently executing on the user device, amount of processor availability, amount of available storage, battery level and so on.

Further, in some embodiments, the device data may include one or more of a device identifier associated with a user device, a network identifier associated with a communication network used for performing the online activity, an Operating System (OS) identifier of an OS installed on the user device and a browser identifier of a browser installed on the user device. In some cases, the device data may be such that a corresponding user may be uniquely identifiable. For example, an IMEI number or a static IP address may uniquely identify a user. In other cases, the device data may be such that a small group of similar users may be identifiable. For instance, a combination of geolocation, device type, OS, browser type may enable identification of a set of similar users who may be proximally located. Accordingly, knowledge of such users may enable companies to target marketing campaigns, such as distributing flyers, in the location focusing on the set of users.

Further, in some embodiments, the contextual data may include sensor data representing state of the at least one user device during performance of the online activity. For instance, sensor data from a location sensor such as a GPS receiver may be captured while a user is visiting a webpage. Similarly, motion data from an accelerometer may be captured to indicate whether the user was in a state of rest or of motion while visiting a webpage. Likewise, the sensor data may also include environmental information, such as temperature, pressure, and so on. Accordingly, the sensor data may provide another dimension for categorizing the anonymous user behavior data. For instance, such data may enable identification of anonymous user behavior data of a very specific set of users, for example, those traveling by a metro rail.

Further, in some embodiments, the anonymous user behavior data may include at least one of demographic data and psychographic data of the user.

Further, in some embodiments, the anonymous user behavior data may include at least one interest of the user. For instance, the at least one interest may be towards a topic, a subject, a person, an event, a product/service, and so on. In some embodiments, the at least one interest may be inferred based on content searched for and/or content consumed. For example, search keywords provided by the user may be captured and one or more interests may be inferred based on the search keywords. Similarly, keywords from content, such as webpages relating to a particular topic, may be captured and used to infer an interest of the user towards the topic.

Further, in some embodiments, the anonymous user behavior data may include a plurality of keywords representing the at least one interest and a plurality of affinity values corresponding to the plurality of keywords. For instance, an exemplary set of keywords identified for a user based on the user's interaction with various webpages is illustrated in FIG. 9. For example, based on the user's visiting of a webpage related to sports news, the keywords “Football” and “Basketball” may be identified and associated with the user. Accordingly, the plurality of keywords may indicate one or more topics of interest to the user. For instance, the plurality of keywords may be extracted from webpages visited by the user. Accordingly, the method 200 may be performed to extract the plurality of keywords from webpages. Further, each keyword may be associated with an affinity value that indicates a relative importance of the keyword to the user. For example, the user may have visited multiple web-pages, each of which may include a listing top 10 smartphones. Accordingly, multiple keywords associated with the top 10 smartphones may be identified and extracted. However, although keywords associated with all top 10 smartphones may be associated with the user, each keyword may be assigned a different affinity value depending on an interest level of the user towards a particular keyword. For example, a user may have performed an interaction, such as clicking a link, on one or more of the webpages indicative of an interest towards some of the top 10 smartphones. Accordingly, the keywords associated with those smartphones may be assigned relatively greater affinity values than other keywords.

Additionally, in some embodiments, the keywords and corresponding affinity values may be identified based on Natural Language Processing (NLP) performed on content of the webpages visited by the user. For instance, as illustrated in FIG. 10, analyzing content of the webpage using, for example, NLP may result in identification of a category of content, such as “Entertainment”. Further, NLP may also identify brand affinities of the webpage, such as, for example, “Star wars” that may provide a greater contextual relevance and brand awareness to users. Additionally, NLP may also include event detection involving identification of specific time-sensitive triggers, such as, for example, an upcoming “New Movie”. Further, NLP may also identify important topics addressed in the content of the webpage and associate those topics as concept tags with the webpage, such as, for example, “Cinema”. Further, NLP may also include entity extraction involving identifying relevant proper nouns like people and/or brands.

Further, in some embodiments, the data associated with the user may include data representing at least one of a product and a service associated with the user. For instance, the user may have purchased one or more products and subscribed to one or more services. Accordingly, such data indicating the products and/or services purchased by the user may be obtained from online and/or offline stores where the purchases were made. For instance, companies that sell products and/or services maintain such information regarding products and/ or services procured by each of their customers in a CRM database. For example, the data may include name of a product, model number of the product, year/month of purchase, cost and so on. Further, in some instances, the data may also include products and/or services towards which the user may have expressed an explicit interest. For example, the user may have enquired about a product and/or service through a communication channel, such as email, phone call, etc. with a company. Accordingly, such information about explicit interests may be captured and stored in the CRM database.

Further, in some embodiments, the data associated with the user may include offline data. For example, the offline data may be obtained from other sources, such as brick and mortar stores. Accordingly, for example, purchase information of the user related to one or more products may be obtained. Similarly, offline data may be obtained from businesses that conduct user surveys. Accordingly, information regarding interests and lifestyle of the user may be obtained.

Further, the method 300 may include a step 340 of transmitting the anonymous user behavior data to the requesting entity, such as the server computer including the CRM database. Further, in some embodiments, the requesting entity may be configured for receiving the anonymous user behavior data corresponding to the user and appending the anonymous behavior data to data associated with the user stored in a database, such as, for example, the CRM database.

Accordingly, in some instances, the CRM database may be supplemented with the anonymous user behavior data as exemplarily illustrated in FIG. 7. As shown, initially, the CRM database may include an email address of the user while other details about the user may be absent (indicated by question marks). However, upon performing the method 200, the CRM database may receive and store keywords representing the user's interests towards various topics, products, brands, etc.

Further, in some embodiments, the method 200 may include a step of receiving an indication of at least one keyword. For example, a company operating the CRM database may transmit the user identifier along with a set of keywords in order to understand the user's affinity towards the set of keywords. Accordingly, the anonymous user behavior data may include an affinity value corresponding to the set of keywords as exemplarily illustrated in FIG. 7. In addition, demographic data, such as, for example, gender, age, income, marital status, etc., may also be received and stored in the CRM database.

Turning now to FIG. 4, a method 400 of predicting churn in accordance with some embodiments is illustrated. A churn of a user with respect to a product and/or service may involve procurement of an alternative product and/or service by the user. In some cases, the user may switch completely from the product and/or service to the alternative. Accordingly, companies manufacturing and/or selling the product and/or service may benefit from identifying users who are likely to churn. Accordingly, the companies may take one or more corrective actions in order to minimize or eliminate the churn.

Further, prior to a user switching over to an alternative product and/or service, the user may perform certain behavior such as searching for alternative products and/or services and reviewing information regarding particular alternative products and/or services. Accordingly, user behavior data may potentially include indicators of a likely churn of users from a product and/or a service.

Accordingly, the method 400 may include a step 410 of identifying at least one of a product and a service used by the user based on the user behavior data. For example, when a user visits a webpage hosted by a webserver, a cookie on the webserver may capture device data corresponding to one or more user devices used by the user to access the webpage. Based on the device data, an indication of products and/or services currently used by the user may be gleaned. For instance, the device data may indicate that the user possesses an Android Smartphone and uses AT&T internet service.

Additionally, in some embodiments, prior to performing step 410, the method may include a step of receiving a request for a churn prediction from a requesting entity, such as a webserver including a CRM database.

Further, the method 400 may include a step 420 of identifying at least one of an interested product and an interested service associated with the user based on the user behavior data. For instance, the user may perform searches for webpages related to iPhone and visit the webpages. Accordingly, such user behavior may be captured and an implicit and/or explicit interest of the user towards a product and/or service, such as iPhone, may be identified.

Additionally, the method 400 may include a step 430 of predicting a churn based on a comparison of the at least one of a product and a service with at least one of the interested product and the interested service. For example, the user behavior data may indicate that the user currently possesses an Android Smartphone while expressing an implicit and/or an explicit interest towards iPhone. Accordingly, a difference between the current product and the interested product based on the comparison may indicate a likelihood of churn. Further, in some embodiments, the churn prediction may include a risk value indicating a likelihood of the user to churn towards at least one of the interested product and the interested service. The risk value may be determined, for example, based on an affinity of the keyword representing the interested product and/or the interested service.

Further, in some embodiments, the churn prediction may include indication of at least one of the interested product and the interested service. Continuing the preceding example, the churn prediction may include indication of iPhone, and in some cases, a risk value indicating a likelihood of the user switching from the Android Smartphone to iPhone.

Accordingly, in some embodiments, the churn prediction may be transmitted to the requesting entity, such as a server computer including the CRM database. Accordingly, in some embodiments, the CRM database may be further enriched by data indicative of churn and a likelihood of churn corresponding to users for each product and/or service.

FIG. 5 illustrates a flow chart of a method 500 of correlating anonymous user behavior data with data associated with known users according to some embodiments. Accordingly, the method 500 may include a step 510 of receiving anonymous user behavior data corresponding to a user. For instance, the anonymous user behavior data may include a combination of the device data and demographic data. Further, the method 500 may include a step 520 of comparing the anonymous user behavior data with data of known users. For example, data of known users in the CRM database may include demographic data along with device data. Accordingly, the device data and demographic data included in the anonymous user behavior data may be correlated with the corresponding data of each of the known users in the CRM database.

Further, the method 500 may include a step 530 of associating the anonymous user behavior data with a known user based on a result of the comparing. For example, based on the comparison, it may be determined that the device data and the demographic data included in the anonymous user behavior data matches with that of the user than with that of other users in the CRM database. Accordingly, it may be determined that the anonymous user behavior data represents behavior of the user. Subsequently, the association may be stored in the CRM database for further use.

FIG. 6 a flow chart of a method 600 of providing anonymous user behavior data according to some embodiments. The method 600 may include a step 610 of receiving user data associated with a user from a requesting entity, such as the server computer including the CRM data. For example, the user data may include one or more of, but is not limited to, demographic data, the device data and so on. Further, the method 600 may include a step 620 of comparing the user data with anonymous user behavior data of a plurality of users. For instance, the platform may include a database containing anonymous user behavior data of a plurality of users. However, the specific user associated with a given anonymous user behavior data may not be known to the platform. Accordingly, the platform may compare the user data with anonymous user behavior data of each user in the database in order to find a match. Accordingly, the method 600 may include a step 630 of identifying anonymous user behavior data of the user based on a result of the comparing. Thus, the platform may be able to identify an association between anonymous user behavior data of a user with other data of the user, such as that available in a CRM database.

IV. Platform Architecture

The user profile creation platform 100 may be embodied as, for example, but not be limited to, a website, a web application, a desktop application, and a mobile application compatible with a computing device. The computing device may comprise, but not be limited to, a desktop computer, laptop, a tablet, or mobile telecommunications device. Moreover, platform 100 may be hosted on a centralized server, such as, for example, a cloud computing service. Although methods 200 to 600 have been described to be performed by a computing device 1100, it should be understood that, in some embodiments, different operations may be performed by different networked elements in operative communication with computing device 1100.

Embodiments of the present disclosure may comprise a system having a memory storage and a processing unit. The processing unit coupled to the memory storage, wherein the processing unit is configured to perform the stages of methods 200 to 600.

FIG. 11 is a block diagram of a system including computing device 1100. Consistent with an embodiment of the disclosure, the aforementioned memory storage and processing unit may be implemented in a computing device, such as computing device 1100 of FIG. 11. Any suitable combination of hardware, software, or firmware may be used to implement the memory storage and processing unit. For example, the memory storage and processing unit may be implemented with computing device 1100 or any of other computing devices 1118, in combination with computing device 1100. The aforementioned system, device, and processors are examples and other systems, devices, and processors may comprise the aforementioned memory storage and processing unit, consistent with embodiments of the disclosure.

With reference to FIG. 11, a system consistent with an embodiment of the disclosure may include a computing device, such as computing device 1100. In a basic configuration, computing device 1100 may include at least one processing unit 1102 and a system memory 1104. Depending on the configuration and type of computing device, system memory 1104 may comprise, but is not limited to, volatile (e.g. random access memory).

(RAM)), non-volatile (e.g. read-only memory (ROM)), flash memory, or any combination. System memory 1104 may include operating system 1105, one or more programming modules 1106, and may include a program data 1107. Operating system 1105, for example, may be suitable for controlling computing device 1100's operation. In one embodiment, programming modules 1106 may include affinity calculating modules, such as, for example, webpage affinity calculation application 1120. Furthermore, embodiments of the disclosure may be practiced in conjunction with a graphics library, other operating systems, or any other application program and is not limited to any particular application or system. This basic configuration is illustrated in FIG. 11 by those components within a dashed line 1108.

Computing device 1100 may have additional features or functionality. For example, computing device 1100 may also include additional data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape. Such additional storage is illustrated in FIG. 11 by a removable storage 1109 and a non-removable storage 1110. Computer storage media may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. System memory 1104, removable storage 1109, and non-removable storage 1110 are all computer storage media examples (i.e., memory storage.) Computer storage media may include, but is not limited to, Random Access Memory (RAM), Read-Only Memory (ROM), electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium, which can be used to store information and, which can be accessed by computing device 1100. Any such computer storage media may be part of device 1100. Computing device 1100 may also have input device(s) 1112 such as a keyboard, a mouse, a pen, a sound input device, a touch input device, etc. Output device(s) 1114 such as a display, speakers, a printer, etc. may also be included. The aforementioned devices are examples and others may be used.

Computing device 1100 may also contain a communication connection 1116 that may allow device 1100 to communicate with other computing devices 1118, such as over a network in a distributed computing environment, for example, an intranet or the Internet. Communication connection 1116 is one example of communication media. Communication media may typically be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. The term “modulated data signal” may describe a signal that has one or more characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media may include wired media, such as a wired network or direct-wired connection, and wireless media, such as acoustic, radio frequency (RF), infrared, and other wireless media. The term computer readable media, as used herein, may include both storage media and communication media.

As stated above, a number of program modules and data files may be stored in system memory 1104, including operating system 1105. While executing on processing unit 1102, programming modules 1106 (e.g., platform application 1120) may perform processes including, for example, one or more of methods 200 to 600's stages as described above. The aforementioned process is an example, and processing unit 1102 may perform other processes. Other programming modules that may be used in accordance with embodiments of the present disclosure may include electronic mail and contacts applications, word processing applications, spreadsheet applications, database applications, slide presentation applications, drawing, or computer-aided application programs, etc.

Generally, consistent with embodiments of the disclosure, program modules may include routines, programs, components, data structures, and other types of structures that may perform particular tasks or that may implement particular abstract data types. Moreover, embodiments of the disclosure may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like. Embodiments of the disclosure may also be practiced in distributed computing environments, where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

Furthermore, embodiments of the disclosure may be practiced in an electrical circuit comprising discrete electronic elements, packaged or integrated electronic chips containing logic gates, a circuit utilizing a microprocessor, or on a single chip containing electronic elements or microprocessors. Embodiments of the disclosure may also be practiced using other technologies capable of performing logical operations, such as, for example, AND, OR, and NOT, including but not limited to mechanical, optical, fluidic, and quantum technologies. In addition, embodiments of the disclosure may be practiced within a general purpose computer or in any other circuits or systems.

Embodiments of the disclosure, for example, may be implemented as a computer process (method), a computing system, or as an article of manufacture, such as a computer program product or computer readable media. The computer program product may be a computer storage media readable by a computer system and encoding a computer program of instructions for executing a computer process. The computer program product may also be a propagated signal on a carrier readable by a computing system and encoding a computer program of instructions for executing a computer process. Accordingly, the present disclosure may be embodied in hardware and/or in software (including firmware, resident software, micro-code, etc.). In other words, embodiments of the present disclosure may take the form of a computer program product on a computer-usable or computer-readable storage medium having computer-usable or computer-readable program code embodied in the medium for use by or in connection with an instruction execution system. A computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.

The computer-usable or computer-readable medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific computer-readable medium examples (a non-exhaustive list), the computer-readable medium may include the following: an electrical connection having one or more wires, a portable computer diskette, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, and a portable compact disc read-only memory (CD-ROM). Note that the computer-usable or computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory.

Embodiments of the present disclosure, for example, are described above with reference to block diagrams and/or operational illustrations of methods, systems, and computer program products according to embodiments of the disclosure. The functions/acts noted in the blocks may occur out of the order as shown in any flowchart. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved.

While certain embodiments of the disclosure have been described, other embodiments may exist. Furthermore, although embodiments of the present disclosure have been described as being associated with data stored in memory and other storage mediums, data can also be stored on or read from other types of computer-readable media, such as secondary storage devices, like hard disks, solid state storage (e.g., USB drive), or a CD-ROM, a carrier wave from the Internet, or other forms of RAM or ROM. Further, the disclosed methods' stages may be modified in any manner, including by reordering stages and/ or inserting or deleting stages, without departing from the disclosure.

All rights including copyrights in the code included herein are vested in and the property of the Applicant. The Applicant retains and reserves all rights in the code included herein, and grants permission to reproduce the material only in connection with reproduction of the granted patent and for no other purpose.

V. Aspects

The application includes at least the following aspects:

Aspect 1. A method of providing business intelligence based on user behavior, wherein the method is a computer implemented method, the method comprising:

-   -   a. receiving a user identifier associated with a user from a         requesting entity;     -   b. identifying an anonymous identifier corresponding to the user         identifier;     -   c. retrieving anonymous user behavior data based on the         anonymous identifier; and     -   d. transmitting the anonymous user behavior data to the         requesting entity.

Aspect 2. The method of aspect 1, wherein the requesting entity is configured for:

-   -   a. receiving the anonymous user behavior data corresponding to         the user; and     -   b. appending the anonymous behavior data to data associated with         the user stored in a database.

Aspect 3. The method of aspect 1, wherein the requesting entity is a server computer, wherein the data associated with the user is comprised in a Customer Relationship Management (CRM) database executable on the server computer.

Aspect 4. The method of aspect 1, further comprising:

-   -   a. identifying at least one of a product and a service used by         the user based on the user behavior data;     -   b. identifying at least one of an interested product and an         interested service associated with the user based on the user         behavior data; and     -   c. predicting a churn based on a comparison of the at least one         of a product and a service with at least one of the interested         product and the interested service.

Aspect 5. The method of aspect 4, further comprising:

-   -   a. receiving a request for a churn prediction from the         requesting entity; and     -   b. transmitting a churn prediction based on the predicting.

Aspect 6. The method of aspect 5, wherein the churn prediction comprises a risk value indicating a likelihood of the user to churn towards at least one of the interested product and the interested service.

Aspect 7. The method of aspect 5, wherein the churn prediction comprises indication of at least one of the interested product and the interested service.

Aspect 8. The method of aspect 1, further comprising an indication of at least one keyword, wherein the anonymous user behavior data comprises an affinity value corresponding to the at least one keyword.

Aspect 9. The method of aspect 1, wherein the anonymous identifier is identified based on operating a one-way hash function on the user identifier.

Aspect 10. The method of aspect 1, wherein retrieving the anonymous user behavior data comprises retrieving data from a plurality of cookies corresponding to a plurality of websites, wherein each cookie comprises at least a portion of the anonymous user behavior data, wherein each cookie is associated with the anonymous identifier.

Aspect 11. The method of aspect 1, wherein the anonymous user behavior data is based on online activity of user.

Aspect 12. The method of aspect 11, wherein the anonymous user behavior data comprises contextual data corresponding to the online activity, wherein the contextual data corresponds to at least one user device used by the user to perform the online activity.

Aspect 13. The method of aspect 12, wherein the contextual data comprises device data representing the at least one user device.

Aspect 14. The method of aspect 13, wherein the device data comprises at least one of a device identifier associated with a user device, a network identifier associated with a communication network used for performing the online activity, an Operating System (OS) identifier of an OS installed on the user device and a browser identifier of a browser installed on the user device.

Aspect 15. The method of aspect 12, wherein the contextual data comprises sensor data representing state of the at least one user device during performance of the online activity.

Aspect 16. The method of aspect 1, wherein the anonymous user behavior data comprises at least one of demographic data and psychographic data of the user.

Aspect 17. The method of aspect 1, wherein the anonymous user behavior data comprises at least one interest of the user.

Aspect 18. The method of aspect 17, wherein the anonymous user behavior data comprises a plurality of keywords representing the at least one interest and a plurality of affinity values corresponding to the plurality of keywords.

Aspect 19. The method of aspect 2, wherein the data associated with the user comprises data representing at least one of a product and a service associated with the user.

Aspect 20. The method of aspect 2, wherein the data associated with the user comprises offline data.

Aspect 21. A method of providing business intelligence based on user behavior, wherein the method is a computer implemented method, the method comprising:

-   -   a. receiving anonymous user behavior data corresponding to a         user;     -   b. comparing the anonymous user behavior data with data of known         users; and     -   c. associating the anonymous user behavior data with a known         user based on a result of the comparing.

Aspect 22. The method of aspect 21, wherein the anonymous user behavior data is based on online activity of user.

Aspect 23. The method of aspect 22, wherein the anonymous user behavior data comprises contextual data corresponding to the online activity, wherein the contextual data corresponds to at least one user device used by the user to perform the online activity.

Aspect 24. The method of aspect 23, wherein the contextual data comprises device data representing the at least one user device.

Aspect 25. The method of aspect 24, wherein the device data comprises at least one of a device identifier associated with a user device, a network identifier associated with a communication network used for performing the online activity, an Operating System (OS) identifier of an OS installed on the user device and a browser identifier of a browser installed on the user device.

Aspect 26. The method of aspect 23, wherein the contextual data comprises sensor data representing state of the at least one user device during performance of the online activity.

Aspect 27. The method of aspect 21, wherein the anonymous user behavior data comprises at least one of demographic data and psychographic data of the user.

Aspect 28. The method of aspect 21, wherein the anonymous user behavior data comprises at least one interest of the user.

Aspect 29. The method of aspect 28, wherein the anonymous user behavior data comprises a plurality of keywords representing the at least one interest and a plurality of affinity values corresponding to the plurality of keywords.

Aspect 30. The method of aspect 29, further comprising:

-   -   a. receiving a user identifier associated with the user;     -   b. identifying an anonymous identifier corresponding to the user         identifier; and     -   c. retrieving the anonymous user behavior data based on the         anonymous identifier.

Aspect 31. The method of aspect 21, wherein data of known users comprises data representing at least one of a product and a service associated with known users.

Aspect 32. The method of aspect 31, further comprising predicting a churn based on a comparison of the anonymous user behavior data with data representing at least one of the product and the service, wherein the anonymous user behavior data indicates an interest of the user towards at least one of another product and another service.

Aspect 33. The method of aspect 21 further comprising:

-   -   a. identifying at least one of a product and a service used by         the user based on the user behavior data;     -   b. identifying at least one of an interested product and an         interested service associated with the user based on the user         behavior data; and     -   c. predicting a churn based on a comparison of the at least one         of a product and a service with at least one of the interested         product and the interested service.

Aspect 34. The method of aspect 21, wherein the data of known users is comprised in a Customer Relationship Management (CRM) database.

Aspect 35. The method of aspect 22, wherein the anonymous user behavior data comprises a plurality of Universal Resource Locators (URLs) associated with webpages visited by the user and a corresponding plurality of time values representing the times when the webpages were visited.

Aspect 36. A method of providing business intelligence based on user behavior, wherein the method is a computer implemented method, the method comprising:

-   -   a. receiving user data associated with a user;     -   b. comparing user data with anonymous user behavior data of a         plurality of users; and     -   c. identifying anonymous user behavior data of the user based on         a result of the comparing.

Aspect 37. A system for providing business intelligence based on user behavior, the system comprising:

-   -   a. a communication module configured to:         -   i. receive a user identifier associated with the user from a             requesting entity; and         -   ii. transmit anonymous user behavior data to the requesting             entity;     -   b. a processing module coupled to the communication module,         wherein the processing module is configured to identify the         anonymous identifier corresponding to the user identifier; and     -   c. a storage module coupled to the processing module, wherein         the storage module is configured to retrieve anonymous user         behavior data based on an anonymous identifier.

Aspect 38. The system of aspect 37, wherein the requesting entity is configured to:

-   -   a. receive the anonymous user behavior data corresponding to the         user; and     -   b. append the anonymous behavior data to data associated with         the user stored in a database.

Aspect 39. The system of aspect 37, wherein the requesting entity is a server computer, wherein the data associated with the user is comprised in a Customer Relationship Management (CRM) database executable on the server computer.

Aspect 40. The system of aspect 37, wherein the processing module is further configured to:

-   -   a. identify at least one of a product and a service used by the         user based on the user behavior data;     -   b. identify at least one of an interested product and an         interested service associated with the user based on the user         behavior data; and     -   c. predict a churn based on a comparison of the at least one of         a product and a service with at least one of the interested         product and the interested service.

Aspect 41. The system of aspect 40, wherein the communication module is further configured to:

-   -   a. receive a request for a churn prediction from the requesting         entity; and     -   b. transmit a churn prediction based on the predicting.

Aspect 42. The system of aspect 41, wherein the churn prediction comprises a risk value indicating a likelihood of the user to churn towards at least one of the interested product and the interested service.

Aspect 43. The system of aspect 41, wherein the churn prediction comprises indication of at least one of the interested product and the interested service.

Aspect 44. The system of aspect 37, wherein the communication module is further configured to receive an indication of at least one keyword, wherein the anonymous user behavior data comprises an affinity value corresponding to the at least one keyword.

Aspect 45. The system of aspect 37, wherein the anonymous identifier is identified based on operating a one-way hash function on the user identifier.

Aspect 46. The system of aspect 37, wherein retrieving the anonymous user behavior data comprises retrieving data from a plurality of cookies corresponding to a plurality of websites, wherein each cookie comprises at least a portion of the anonymous user behavior data, wherein each cookie is associated with the anonymous identifier.

Aspect 47. The system of aspect 37, wherein the anonymous user behavior data is based on online activity of user.

Aspect 48. The system of aspect 47, wherein the anonymous user behavior data comprises contextual data corresponding to the online activity, wherein the contextual data corresponds to at least one user device used by the user to perform the online activity.

Aspect 49. The system of aspect 48, wherein the contextual data comprises device data representing the at least one user device.

Aspect 50. The system of aspect 49, wherein the device data comprises at least one of a device identifier associated with a user device, a network identifier associated with a communication network used for performing the online activity, an Operating System (OS) identifier of an OS installed on the user device and a browser identifier of a browser installed on the user device.

Aspect 51. The system of aspect 48, wherein the contextual data comprises sensor data representing state of the at least one user device during performance of the online activity.

Aspect 52. The system of aspect 37, wherein the anonymous user behavior data comprises at least one of demographic data and psychographic data of the user.

Aspect 53. The system of aspect 37, wherein the anonymous user behavior data comprises at least one interest of the user.

Aspect 54. The system of aspect 53, wherein the anonymous user behavior data comprises a plurality of keywords representing the at least one interest and a plurality of affinity values corresponding to the plurality of keywords.

Aspect 55. The system of aspect 38, wherein the data associated with the user comprises data representing at least one of a product and a service associated with the user.

Aspect 56. The system of aspect 38, wherein the data associated with the user comprises offline data.

While the specification includes examples, the disclosure's scope is indicated by the following claims. Furthermore, while the specification has been described in language specific to structural features and/or methodological acts, the claims are not limited to the features or acts described above. Rather, the specific features and acts described above are disclosed as examples for embodiments of the disclosure.

Insofar as the description above and the accompanying drawings disclose any additional subject matter that is not within the scope of the claims below, the disclosures are not dedicated to the public and the right to file one or more applications to claims such additional disclosures are reserved. 

The following is claimed:
 1. A method of providing business intelligence based on consumer behavior, wherein the method is a computer implemented method, the method comprising: retrieving internet usage of a consumer via a web crawler; converting the internet usage of the consumer into consumer behavior data via a data platform; anonymizing the consumer behavior data by associating the consumer behavior data with an anonymous identifier associated with the consumer; receiving, from a requesting entity, a plurality of anonymized consumer identifiers; receiving, from the requesting entity, a plurality of parameters of interest to be associated with at least one of the plurality of anonymized consumer identifiers; cross-referencing the anonymous identifier corresponding to an anonymized consumer identifier within the plurality of anonymized consumer identifiers; retrieving anonymized consumer behavior data associated with the anonymous identifier; determining whether the anonymized consumer behavior data is associated with at least one of the plurality of parameters of interest, wherein determining comprises analyzing the anonymized consumer behavior data in view of the at least one parameter of interest; and transmitting, to the requesting entity, an indication that the at least one parameter of interest is associated with the anonymized consumer behavior data corresponding to the anonymized consumer identifier.
 2. The method of claim 1, wherein the requesting entity is configured for: receiving the anonymous user behavior data corresponding to the user; and appending the anonymous behavior data to data associated with the user stored in a database.
 3. The method of claim 1, wherein the requesting entity is a server computer, wherein the data associated with the user is comprised in a Customer Relationship Management (CRM) database executable on the server computer.
 4. The method of claim 1, further comprising: identifying at least one of a product and a service used by the user based on the user behavior data; identifying at least one of an interested product and an interested service associated with the user based on the user behavior data; and predicting a churn based on a comparison of the at least one of a product and a service with at least one of the interested product and the interested service.
 5. The method of claim 4, further comprising: receiving a request for a churn prediction from the requesting entity; and transmitting a churn prediction based on the predicting.
 6. The method of claim 5, wherein the churn prediction includes a risk value indicating a likelihood of the user to churn towards at least one of the interested product and the interested service.
 7. The method of claim 5, wherein the churn prediction includes receiving an indication of at least one of the interested product and the interested service.
 8. The method of claim 1, further comprising receiving an indication of at least one keyword, wherein the anonymous user behavior data comprises an affinity value corresponding to the at least one keyword.
 9. The method of claim 1, further comprising identifying the anonymous identifier based on operating a one-way hash function on the user identifier.
 10. The method of claim 1, wherein retrieving the anonymous user behavior data further includes retrieving data from a plurality of cookies corresponding to a plurality of websites, wherein each cookie comprises at least a portion of the anonymous user behavior data, wherein each cookie is associated with the anonymous identifier.
 11. The method of claim 1, wherein the anonymous user behavior data is based on online activity of user.
 12. The method of claim 11, wherein the anonymous user behavior data includes contextual data corresponding to the online activity, wherein the contextual data corresponds to at least one user device used by the user to perform the online activity.
 13. The method of claim 12, wherein the contextual data includes device data representing the at least one user device.
 14. The method of claim 13, wherein the device data includes at least one of a device identifier associated with a user device, a network identifier associated with a communication network used for performing the online activity, an Operating System (OS) identifier of an OS installed on the user device and a browser identifier of a browser installed on the user device.
 15. The method of claim 12, wherein the contextual data comprises sensor data representing state of the at least one user device during performance of the online activity.
 16. The method of claim 1, wherein the anonymous user behavior data includes at least one of demographic data and psychographic data of the user.
 17. The method of claim 1, wherein the anonymous user behavior data includes at least one interest of the user.
 18. The method of claim 17, wherein the anonymous user behavior data includes a plurality of keywords representing the at least one interest and a plurality of affinity values corresponding to the plurality of keywords. 